package com.scnu.recruitment.domain.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 用户
 * </p>
 *
 * @author startech
 * @since 2025-10-21
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sxo_user")
public class SxoUser implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 自增id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 会员码
     */
    @TableField("number_code")
    private String numberCode;

    /**
     * 状态（0正常, 1禁止发言, 2禁止登录）
     */
    @TableField("status")
    private Integer status;

    /**
     * 配合密码加密串
     */
    @TableField("salt")
    private String salt;

    /**
     * 登录密码
     */
    @TableField("pwd")
    private String pwd;

    /**
     * 用户名
     */
    @TableField("username")
    private String username;

    /**
     * 用户昵称
     */
    @TableField("nickname")
    private String nickname;

    /**
     * 手机号码
     */
    @TableField("mobile")
    private String mobile;

    /**
     * 电子邮箱（最大长度60个字符）
     */
    @TableField("email")
    private String email;

    /**
     * 性别（0保密，1女，2男）
     */
    @TableField("gender")
    private Integer gender;

    /**
     * 用户头像地址
     */
    @TableField("avatar")
    private String avatar;

    /**
     * 所在省
     */
    @TableField("province")
    private String province;

    /**
     * 所在市
     */
    @TableField("city")
    private String city;

    /**
     * 所在市
     */
    @TableField("county")
    private String county;

    /**
     * 生日
     */
    @TableField("birthday")
    private Integer birthday;

    /**
     * 详细地址
     */
    @TableField("address")
    private String address;

    /**
     * 有效积分
     */
    @TableField("integral")
    private Integer integral;

    /**
     * 锁定积分
     */
    @TableField("locking_integral")
    private Integer lockingIntegral;

    /**
     * 推荐人用户id
     */
    @TableField("referrer")
    private Integer referrer;

    /**
     * 用户分销等级（手动指定）
     */
    @TableField("plugins_distribution_level")
    private Integer pluginsDistributionLevel;

    /**
     * 用户分销等级（自动匹配）
     */
    @TableField("plugins_distribution_auto_level")
    private Integer pluginsDistributionAutoLevel;

    /**
     * 会员等级增强版（手动指定）
     */
    @TableField("plugins_user_level")
    private Integer pluginsUserLevel;

    /**
     * 会员等级增强版（自动匹配）
     */
    @TableField("plugins_user_auto_level")
    private Integer pluginsUserAutoLevel;

    /**
     * 是否已删除（0否, 大于0删除时间）
     */
    @TableField("is_delete_time")
    private Integer isDeleteTime;

    /**
     * 是否已注销（0否, 大于0删除时间）
     */
    @TableField("is_logout_time")
    private Integer isLogoutTime;

    /**
     * 添加时间
     */
    @TableField("add_time")
    private Integer addTime;

    /**
     * 更新时间
     */
    @TableField("upd_time")
    private Integer updTime;


}
